type Chunk<T extends any[], U extends number, C extends any[] = []> = C['length'] extends U
    ? [C, ...Chunk<T, U, []>]
    : T extends [infer P, ...infer R]
        ? Chunk<R, U, [...C, P]>
        : C extends []
            ? []
            : [C]